It is known in the state of the art to determine the position of a receiver based on code modulated signals from several beacons using, for example, a CDMA (Code Division Multiple Access) spread spectrum communication.
For a spread spectrum communication in its basic form, a data sequence is used by a transmitting unit to modulate a sinusoidal carrier and then the bandwidth of the resulting signal is spread to a much larger value. For spreading the bandwidth, the single-frequency carrier can be multiplied for example by a high-rate binary pseudo-random noise (PRN) code sequence comprising values of −1 and 1, which code sequence is known to a receiver. Thus, the signal that is transmitted includes a data component, a PRN component, and a sinusoidal carrier component.
A well known system which is based on the evaluation of such code modulated signals is GPS (Global Positioning System). In GPS, code modulated signals are transmitted by several satellites that orbit the earth and received by GPS receivers of which the current position is to be determined. Each of the satellites, which are also called space vehicles (SV), transmits two microwave carrier signals. One of these carrier signals L1 is employed for carrying a navigation message and code signals of a standard positioning service (SPS). The L1 carrier signal is modulated by each satellite with a different C/A (Coarse Acquisition) Code known at the receivers. Thus, different channels are obtained for the transmission by the different satellites. The C/A code, which is spreading the spectrum over a 1 MHz bandwidth, is repeated every 1023 chips, the epoch of the code being 1 ms. The carrier frequency of the L1 signal is further modulated with the navigation information at a bit rate of 50 bit/s.
The navigation information, which constitutes a data sequence, comprises in particular ephemeris data. The ephemeris data comprises ephemeris parameters describing short sections of the orbit of the respective satellite. Based on these ephemeris parameters, an algorithm can estimate the position of the satellite for any time while the satellite is in the respectively described section. The ephemeris data also comprises clock correction parameters which indicate the current deviation of the satellite clock versus a general GPS time. Further, a time-of-week TOW count is reported every six seconds as another part of the navigation message.
A GPS receiver of which the position is to be determined receives the signals transmitted by the currently available satellites, and a tracking unit of the receiver detects and tracks the channels used by different satellites based on the different comprised C/A codes. The receiver first determines the time of transmission TOT of the code transmitted by each satellite. Usually, the estimated time of transmission is composed of two components. A first component is the TOW count extracted from the decoded navigation message in the signals from the satellite, which has a precision of six seconds. A second component is based on counting the epochs and chips from the time at which the bits indicating the TOW are received in the tracking unit of the receiver. The epoch and chip count provides the receiver with the milliseconds and sub-milliseconds of the time of transmission of specific received bits.
Based on the time of transmission and the measured time of arrival TOA of the signal at the receiver, the time of flight TOF required by the signal to propagate from the satellite to the receiver is determined. By multiplying this TOF with the speed of light, it is converted to the distance between the receiver and the respective satellite. The computed distance between a specific satellite and a receiver is called pseudo-range, because the GPS system time is not accurately known in the receiver. Usually, the receiver calculates the accurate time of arrival of a signal based on some initial estimate, and the more accurate the initial time estimate is, the more efficient are position and accurate time calculations. A reference GPS time can, but does not have to be provided to the receiver by a network.
The computed distances and the estimated positions of the satellites then permit a calculation of the current position of the receiver, since the receiver is located at an intersection of the pseudo-ranges from a set of satellites. In order to be able to compute a position of a receiver in three dimensions and the time offset in the receiver clock, the signals from four different GPS satellite signals are required.
In urban and indoor environments, however, the number of found satellites may be less than four. Thus, it is a challenging task to estimate the position of a receiver based on incomplete information.
It is known to use hybrid positioning systems, in which base stations and satellites are used in the positioning, but also such hybrid positioning systems require a certain amount of measurements. If there are not sufficient measurements available, the measurements are discarded and new measurements are obtained.
The problem of missing measurements has been solved by freezing some of the coordinates of the receiver using appropriate reference coordinates and by finding the solution of the usual equations only for the remaining coordinates. An information on the altitude is used in this approach when available. Such a freezing of coordinates may lead to large errors in certain situations, though.
It is to be understood that the problem arises not only for GPS receivers, but as well with any other type of ranging receivers for which the position is to be calculated based on code modulated beacon signals.